home *** CD-ROM | disk | FTP | other *** search
Text File | 1996-05-01 | 41.4 KB | 1,160 lines | [TEXT/MPS ] |
- ;
- ; File: TextCommon.a
- ;
- ; Contains: Definitions for common text types, values for them, and related routines
- ;
- ; Version: Technology: System 8
- ; Release: Universal Interfaces 3.0d3 on Copland DR1
- ;
- ; Copyright: © 1984-1996 by Apple Computer, Inc. All rights reserved.
- ;
- ; Bugs?: If you find a problem with this file, send the file and version
- ; information (from above) and the problem description to:
- ;
- ; Internet: apple.bugs@applelink.apple.com
- ; AppleLink: APPLE.BUGS
- ;
- ;
- IF &TYPE('__TEXTCOMMON__') = 'UNDEFINED' THEN
- __TEXTCOMMON__ SET 1
-
- IF &TYPE('__TYPES__') = 'UNDEFINED' THEN
- include 'Types.a'
- ENDIF
- IF FOR_SYSTEM7_AND_SYSTEM8_PREEMPTIVE THEN
- ;
- ; LocaleLanguageCodes are derived from the alpha-3 character codes
- ; in ISO 639. (see comment below)
- ;
- ; LocaleRegionCodes are derived from the alpha-2 codes in ISO 1399.
- ; (see comment below)
- ;
- ; Apple does not maintain the contents of these lists. For that
- ; we rely on ISO. Additionally, Apple will not attempt to create an enumerated
- ; type containing the ISO language and territory codes. Instead this file
- ; contains two very long comments containing all the codes we know of at this
- ; point in time (Nov. 1995). To obtain the most up to date list you will
- ; need to contact ISO.
- ;
- ; LocaleLanguageCode and LocaleRegionCodes along with LocaleCustomizationCodes
- ; are used to create LocaleIdentifiers. LocaleIdentifiers are packed
- ; 32-bit combinations of language and region information that can be
- ; used to tag international data.
- ;
- ; To create a LocaleIdentifiers find the language you are interested in
- ; see the long comment labeled "ISO CD 639-2 Language Codes."
- ;
- ; Next find the two character code that matches the territory/region you
- ; are interested in. These are located in the comment labeled
- ; "Codes from ISO 3166."
- ;
- ; This can then be passed to the function CreateLocaleIdentifier like
- ; this:
- ; CreateLocaleIdentifier(
- ; 'eng', //english
- ; 'AU', //Australian
- ; 0
- ; )
- ;
- ; In some cases there is more than one alpha-3 symbol for a given
- ; language. Although, you can certainly create a LocaleIdentifier
- ; from any of these symbols Apple has chosen preferred symbols which
- ; will be used in Apple's localizations. Where there are more than
- ; one alpha-3 language symbol for a given language the preferred symbol
- ; is the first one in the list. The second item in the list gives
- ; both of the ISO codes.
- ; i.e.
- ; sqi Albanian
- ; alb/sqi Albanian
- ;
- ;
- ; typedef UInt32 LocaleIdentifier
-
- ; Create correctly spelled versions of kSystemDefaultLocaleIdentifer and
- ; kUserDefaultLocaleIdentifer. Leave the misspelled symbols in so nobody breaks.
-
- kLocaleIdentifierWildCard EQU $00000000
- kSystemDefaultLocaleIdentifer EQU $7FFFFFFF
- kSystemDefaultLocaleIdentifier EQU $7FFFFFFF
- kUserDefaultLocaleIdentifer EQU $7EEEEEEE
- kUserDefaultLocaleIdentifier EQU $7EEEEEEE
- ; typedef UInt32 LocaleLanguageCode
-
-
- kLocaleLanguageWildCard EQU $00000000
- ; typedef UInt16 LocaleRegionCode
-
- ; typedef UInt16 LocaleCustomizationCode
-
-
- kLocaleRegionWildCard EQU $0000
- kLocaleCustomizationWildCard EQU $0000
- ; TextEncodingBase type & values
- ; (values 0-32 correspond to the Script Codes defined in Inside Macintosh: Text pages 6-52 and 6-53
- ; typedef UInt32 TextEncodingBase
-
-
- ; Mac OS encodings
- kTextEncodingMacRoman EQU 0
- kTextEncodingMacJapanese EQU 1
- kTextEncodingMacTradChinese EQU 2
- kTextEncodingMacKorean EQU 3
- kTextEncodingMacArabic EQU 4
- kTextEncodingMacHebrew EQU 5
- kTextEncodingMacGreek EQU 6
- kTextEncodingMacCyrillic EQU 7
- kTextEncodingMacRSymbol EQU 8
- kTextEncodingMacDevanagari EQU 9
- kTextEncodingMacGurmukhi EQU 10
- kTextEncodingMacGujarati EQU 11
- kTextEncodingMacOriya EQU 12
- kTextEncodingMacBengali EQU 13
- kTextEncodingMacTamil EQU 14
- kTextEncodingMacTelugu EQU 15
- kTextEncodingMacKannada EQU 16
- kTextEncodingMacMalayalam EQU 17
- kTextEncodingMacSinhalese EQU 18
- kTextEncodingMacBurmese EQU 19
- kTextEncodingMacKhmer EQU 20
- kTextEncodingMacThai EQU 21
- kTextEncodingMacLaotian EQU 22
- kTextEncodingMacGeorgian EQU 23
- kTextEncodingMacArmenian EQU 24
- kTextEncodingMacSimpChinese EQU 25
- kTextEncodingMacTibetan EQU 26
- kTextEncodingMacMongolian EQU 27
- kTextEncodingMacGeez EQU 28
- kTextEncodingMacEastEurRoman EQU 29
- kTextEncodingMacCentralEurRoman EQU 29
- kTextEncodingMacVietnamese EQU 30
- kTextEncodingMacExtArabic EQU 31
- kTextEncodingMacUninterp EQU 32
- kTextEncodingMacSymbol EQU 33
- kTextEncodingMacDingbats EQU 34
- kTextEncodingMacTurkish EQU 35
- kTextEncodingMacCroatian EQU 36
- kTextEncodingMacIcelandic EQU 37
- kTextEncodingMacRomanian EQU 38
- kTextEncodingMacUkrainian EQU 152
- kTextEncodingMacBulgarian EQU 153
- kTextEncodingMacHFS EQU $FF ; Meta-value, should never appear in a table.
- ; Unicode & ISO UCS encodings begin at 0x100
- kTextEncodingUnicodeDefault EQU $0100 ; Meta-value, should never appear in a table.
- kTextEncodingUnicodeV1_1 EQU $0101
- kTextEncodingISO10646_1993 EQU $0102 ; can have UCS4 format (Unicode can't)
- ; ISO 8-bit and 7-bit encodings begin at 0x200
- kTextEncodingISOLatin1 EQU $0201 ; ISO 8859-1
- kTextEncodingISOLatin2 EQU $0202 ; ISO 8859-2
- kTextEncodingISOLatinCyrillic EQU $0205 ; ISO 8859-5
- kTextEncodingISOLatinArabic EQU $0206 ; ISO 8859-6, = ASMO 708, =DOS CP 708
- kTextEncodingISOLatinGreek EQU $0207 ; ISO 8859-7
- kTextEncodingISOLatinHebrew EQU $0208 ; ISO 8859-8
- kTextEncodingISOLatin5 EQU $0209 ; ISO 8859-9
- ; MS-DOS & Windows encodings begin at 0x400
- kTextEncodingDOSLatinUS EQU $0400 ; code page 437
- kTextEncodingDOSGreek EQU $0405 ; code page 737 (formerly code page 437G)
- kTextEncodingDOSBalticRim EQU $0406 ; code page 775
- kTextEncodingDOSLatin1 EQU $0410 ; code page 850, "Multilingual"
- kTextEncodingDOSGreek1 EQU $0411 ; code page 851
- kTextEncodingDOSLatin2 EQU $0412 ; code page 852, Slavic
- kTextEncodingDOSCyrillic EQU $0413 ; code page 855, IBM Cyrillic
- kTextEncodingDOSTurkish EQU $0414 ; code page 857, IBM Turkish
- kTextEncodingDOSPortuguese EQU $0415 ; code page 860
- kTextEncodingDOSIcelandic EQU $0416 ; code page 861
- kTextEncodingDOSHebrew EQU $0417 ; code page 862
- kTextEncodingDOSCanadianFrench EQU $0418 ; code page 863
- kTextEncodingDOSArabic EQU $0419 ; code page 864
- kTextEncodingDOSNordic EQU $041A ; code page 865
- kTextEncodingDOSRussian EQU $041B ; code page 866
- kTextEncodingDOSGreek2 EQU $041C ; code page 869, IBM Modern Greek
- kTextEncodingDOSThai EQU $041D ; code page 874, also used for Windows
- kTextEncodingDOSJapanese EQU $0420 ; code page 932, also used for Windows
- kTextEncodingDOSChineseSimplif EQU $0421 ; code page 936, also used for Windows
- kTextEncodingDOSKorean EQU $0422 ; code page 949, also used for Windows
- kTextEncodingDOSChineseTrad EQU $0423 ; code page 950, also used for Windows
- kTextEncodingWindowsLatin1 EQU $0500 ; code page 1252
- kTextEncodingWindowsANSI EQU $0500 ; code page 1252 (alternate name)
- kTextEncodingWindowsLatin2 EQU $0501 ; code page 1250, Central Europe
- kTextEncodingWindowsCyrillic EQU $0502 ; code page 1251, Slavic Cyrillic
- kTextEncodingWindowsGreek EQU $0503 ; code page 1253
- kTextEncodingWindowsLatin5 EQU $0504 ; code page 1254, Turkish
- kTextEncodingWindowsHebrew EQU $0505 ; code page 1255
- kTextEncodingWindowsArabic EQU $0506 ; code page 1256
- kTextEncodingWindowsBalticRim EQU $0507 ; code page 1257
- ; Various national standards begin at 0x600
- kTextEncodingUS_ASCII EQU $0600
- kTextEncodingJIS_X0201_76 EQU $0620
- kTextEncodingJIS_X0208_83 EQU $0621
- kTextEncodingJIS_X0208_90 EQU $0622
- kTextEncodingJIS_X0212_90 EQU $0623
- kTextEncodingGB_2312_80 EQU $0630
- kTextEncodingKSC_5601_87 EQU $0640 ; ISO 2022 collections begin at 0x800
- kTextEncodingISO_2022_JP EQU $0820
- kTextEncodingISO_2022_JP_2 EQU $0821
- kTextEncodingISO_2022_KR EQU $0840 ; EUC collections begin at 0x900
- kTextEncodingEUC_JP EQU $0920
- kTextEncodingEUC_KR EQU $0940 ; Other defacto standards begin at 0xA00
- kTextEncodingShiftJIS EQU $0A01 ; plain Shift-JIS
- kTextEncodingKOI8_R EQU $0A02 ; Russian internet standard
- ; TextEncodingVariant type & values
- ; typedef UInt32 TextEncodingVariant
-
-
- ; Default TextEncodingVariant, for any TextEncodingBase
- kTextEncodingDefaultVariant EQU 0 ; Variants of kTextEncodingMacJapanese
- kJapaneseStandardVariant EQU 0
- kJapaneseStdNoVerticalsVariant EQU 1
- kJapaneseBasicVariant EQU 2
- kJapanesePostScriptScrnVariant EQU 3
- kJapanesePostScriptPrintVariant EQU 4
- kJapaneseVertAtKuPlusTenVariant EQU 5 ; Variants of kTextEncodingMacHebrew
- kHebrewStandardVariant EQU 0
- kHebrewFigureSpaceVariant EQU 1 ; Variants of kTextEncodingUnicodeV1_1
- kUnicodeNoSubset EQU 0
- kUnicodeNoCompatibilityVariant EQU 1
- kUnicodeMaxDecomposedVariant EQU 2
- kUnicodeNoComposedVariant EQU 3
- ; TextEncodingFormat type & values
- ; typedef UInt32 TextEncodingFormat
-
-
- ; Default TextEncodingFormat for Any TextEncodingBase
- kTextEncodingDefaultFormat EQU 0 ; Formats for kTextEncodingUnicodeV1_1
- kUnicode16BitFormat EQU 0
- kUnicodeUTF7Format EQU 1
- kUnicodeUTF8Format EQU 2 ; Formats for kTextEncodingISO10646_1993
- kISO10646UCS2Format EQU 0
- ; TextEncoding type
- ; typedef UInt32 TextEncoding
-
- ; enums for TextEncoding Conversion routines
-
- kTextScriptDontCare EQU -128
- kTextLanguageDontCare EQU -128
- kTextRegionDontCare EQU -128
- ; Character Group and Class
- ; typedef UInt8 CharacterGroup
-
-
- kCharGroupAny EQU 0 ; wildcard
- kCharGroupControl EQU 1
- kCharGroupCommon EQU 2
- kCharGroupRomanNumeral EQU 4
- kCharGroupLatin EQU 8
- kCharGroupGreek EQU 9
- kCharGroupCyrillic EQU 10
- kCharGroupArmenian EQU 11
- kCharGroupHebrew EQU 12
- kCharGroupArabic EQU 13
- kCharGroupIndicCommon EQU 14
- kCharGroupDevanagari EQU 15
- kCharGroupBengali EQU 16
- kCharGroupGurmukhi EQU 17
- kCharGroupGujarati EQU 18
- kCharGroupOriya EQU 19
- kCharGroupTamil EQU 20
- kCharGroupTelugu EQU 21
- kCharGroupKannada EQU 22
- kCharGroupMalayalam EQU 23
- kCharGroupSinhala EQU 24
- kCharGroupThai EQU 25
- kCharGroupLao EQU 26
- kCharGroupBurmese EQU 27
- kCharGroupKhmer EQU 28
- kCharGroupTibetan EQU 29
- kCharGroupMongolian EQU 30
- kCharGroupGeorgian EQU 31
- kCharGroupEthiopic EQU 32
- kCharGroupCJKCommon EQU 48
- kCharGroupJapaneseCommon EQU 49
- kCharGroupKanaCommon EQU 50
- kCharGroupHiragana EQU 51
- kCharGroupKatakana EQU 52
- kCharGroupBopomofo EQU 53
- kCharGroupJamoHangul EQU 54
- kCharGroupCJKIdeograph EQU 55
- kCharGroupUserDefined EQU 62
- ; typedef UInt8 CharacterSubgroup
-
- ; typedef UInt8 CharacterClass
-
-
- kCharClassAny EQU 0 ; wildcard
- kCharClassLetter EQU 1
- kCharClassNumber EQU 2
- kCharClassSeparator EQU 3
- kCharClassPunctuation EQU 4
- kCharClassSymbol EQU 5
- kCharClassControl EQU 6
- kCharClassUndefined EQU 7
- ; typedef UInt8 CharacterSubclass
-
- ; subclass wildcard for all classes
-
- kCharSubclassAny EQU 0
- ; subclasses for class letter
-
- kCharSubclassLetterBasic EQU 1
- kCharSubclassLetterModifier EQU 2
- kCharSubclassLetterCombining EQU 3
- kCharSubclassLetterWordAbbrev EQU 4
- ; subclasses for class number
-
- kCharSubclassNumberBasic EQU 1
- kCharSubclassNumberFraction EQU 2
- ; subclasses for class separator
-
- kCharSubclassSeparatorSpace EQU 1
- kCharSubclassSeparatorNoBreak EQU 2
- kCharSubclassSeparatorTab EQU 3
- kCharSubclassSeparatorLineBreak EQU 4
- ; subclasses for class symbol
-
- kCharSubclassSymbolOther EQU 1
- kCharSubclassSymbolMath EQU 2
- kCharSubclassSymbolCurrency EQU 3
- kCharSubclassSymbolCombining EQU 4
- ; typedef UInt16 CharacterSubclassMask
-
-
- kCharLetterBasicMask EQU $02
- kCharLetterModifierMask EQU $04
- kCharLetterCombiningMask EQU $08
- kCharLetterWordAbbrevMask EQU $10
- kCharNumberBasicMask EQU $02
- kCharNumberFractionMask EQU $04
- kCharSeparatorSpaceMask EQU $02
- kCharSeparatorNoBreakMask EQU $04
- kCharSeparatorTabMask EQU $08
- kCharSeparatorLineBreakMask EQU $10
- kCharSymbolOtherMask EQU $02
- kCharSymbolMathMask EQU $04
- kCharSymbolCurrencyMask EQU $08
- ; Prototypes for LocaleIdentifier functions
- ;
- ; extern LocaleIdentifier CreateLocaleIdentifier(LocaleLanguageCode language, LocaleRegionCode region, LocaleCustomizationCode customization)
- ;
- IF GENERATINGCFM THEN
- IMPORT_CFM_FUNCTION CreateLocaleIdentifier
- ENDIF
-
- ;
- ; extern LocaleLanguageCode GetLocaleLanguage(LocaleIdentifier identifier)
- ;
- IF GENERATINGCFM THEN
- IMPORT_CFM_FUNCTION GetLocaleLanguage
- ENDIF
-
- ;
- ; extern LocaleRegionCode GetLocaleRegion(LocaleIdentifier identifier)
- ;
- IF GENERATINGCFM THEN
- IMPORT_CFM_FUNCTION GetLocaleRegion
- ENDIF
-
- ;
- ; extern LocaleCustomizationCode GetLocaleCustomization(LocaleIdentifier identifier)
- ;
- IF GENERATINGCFM THEN
- IMPORT_CFM_FUNCTION GetLocaleCustomization
- ENDIF
-
- ; Prototypes for TextEncoding functions
- ;
- ; pascal TextEncoding CreateTextEncoding(TextEncodingBase encodingBase, TextEncodingVariant encodingVariant, TextEncodingFormat encodingFormat)
- ;
- IF ¬ GENERATINGCFM THEN
- Macro
- _CreateTextEncoding
- move.w #$0615,D0
- dc.w $ABCE
- EndM
- ELSE
- IMPORT_CFM_FUNCTION CreateTextEncoding
- ENDIF
-
- ;
- ; pascal TextEncodingBase GetTextEncodingBase(TextEncoding encoding)
- ;
- IF ¬ GENERATINGCFM THEN
- Macro
- _GetTextEncodingBase
- move.w #$0216,D0
- dc.w $ABCE
- EndM
- ELSE
- IMPORT_CFM_FUNCTION GetTextEncodingBase
- ENDIF
-
- ;
- ; pascal TextEncodingVariant GetTextEncodingVariant(TextEncoding encoding)
- ;
- IF ¬ GENERATINGCFM THEN
- Macro
- _GetTextEncodingVariant
- move.w #$0217,D0
- dc.w $ABCE
- EndM
- ELSE
- IMPORT_CFM_FUNCTION GetTextEncodingVariant
- ENDIF
-
- ;
- ; pascal TextEncodingFormat GetTextEncodingFormat(TextEncoding encoding)
- ;
- IF ¬ GENERATINGCFM THEN
- Macro
- _GetTextEncodingFormat
- move.w #$0218,D0
- dc.w $ABCE
- EndM
- ELSE
- IMPORT_CFM_FUNCTION GetTextEncodingFormat
- ENDIF
-
- ENDIF
- IF FOR_SYSTEM7_AND_SYSTEM8_COOPERATIVE THEN
- ;
- ; pascal OSStatus UpgradeScriptInfoToTextEncoding(ScriptCode textScriptID, LangCode textLanguageID, RegionCode regionID, ConstStr255Param textFontname, TextEncoding *encoding)
- ;
- IF ¬ GENERATINGCFM THEN
- Macro
- _UpgradeScriptInfoToTextEncoding
- move.w #$0710,D0
- dc.w $ABCE
- EndM
- ELSE
- IMPORT_CFM_FUNCTION UpgradeScriptInfoToTextEncoding
- ENDIF
-
- ;
- ; pascal OSStatus RevertTextEncodingToScriptInfo(TextEncoding encoding, ScriptCode *textScriptID, LangCode *textLanguageID, Str255 textFontname)
- ;
- IF ¬ GENERATINGCFM THEN
- Macro
- _RevertTextEncodingToScriptInfo
- move.w #$0811,D0
- dc.w $ABCE
- EndM
- ELSE
- IMPORT_CFM_FUNCTION RevertTextEncodingToScriptInfo
- ENDIF
-
- ENDIF
- IF FOR_SYSTEM8_COOPERATIVE THEN
- ;
- ; extern OSStatus UpgradeScriptInfoToLocaleIdentifier(ScriptCode script, LangCode language, RegionCode region, ConstStr255Param fontName, LocaleIdentifier *identifier)
- ;
- IF GENERATINGCFM THEN
- IMPORT_CFM_FUNCTION UpgradeScriptInfoToLocaleIdentifier
- ENDIF
-
- ;
- ; extern OSStatus RevertLocaleIdentifierToScriptInfo(LocaleIdentifier identifier, ScriptCode *script, LangCode *language, Str255 fontName)
- ;
- IF GENERATINGCFM THEN
- IMPORT_CFM_FUNCTION RevertLocaleIdentifierToScriptInfo
- ENDIF
-
- ENDIF
- IF FOR_SYSTEM7_AND_SYSTEM8_PREEMPTIVE THEN
- ; typedef FourCharCode CharPropertyType
-
-
- kCharPropertyTypeFlags EQU 'flag'
- kCharPropertyTypeClass EQU 'clas'
- kCharPropertyTypeGroup EQU 'grup'
- kCharPropertyTypeDirection EQU 'dirc'
- kCharPropertyTypeReorderPri EQU 'reor'
- kCharPropertyTypeToken EQU 'tokn'
- kCharPropertyTypeCtypes EQU 'ctyp'
- ; typedef UInt32 CharPropertyValue
-
- ;
- ; extern OSStatus GetCharacterProperties(BytePtr charPtr, TextEncoding encoding, ItemCount propertyCount, CharPropertyType typeList[2147483647], CharPropertyValue valueList[2147483647])
- ;
- IF GENERATINGCFM THEN
- IMPORT_CFM_FUNCTION GetCharacterProperties
- ENDIF
-
- ENDIF
- ;
- ;----------------------------------------------------------------------------
- ;
- ;ISO CD 639-2 Language Codes
- ;
- ;----------------------------------------------------------------------------
- ;
- ;This is a extract of a paper called ISO CD 639/2 Draft Proposal, titled
- ;"Code for the representation of names of languages, alpha-3 code" dated
- ;12/16/91.
- ;
- ; * Typed in by Keld.Simonsen@dkuug.dk 1993-11-11
- ;
- ; Table 3
- ; Alpha-3 symbols arranged alphabetically by symbol
- ;
- ; Symbol Language name
- ;
- ; abk Abkhazian
- ; ace Achinese
- ; ach Acoli
- ; ada Adangme
- ; aar Afar
- ; afr Africaans
- ; afh Afrihili
- ; afa Afro-Asiatic (Other)
- ; aka Akan
- ; akk Akkadian
- ; sqi Albanian
- ; alb/sqi Albanian
- ; ale Aleut
- ; alg Algonquian languages
- ; ajm Aljamia
- ; tut Altaic (Other)
- ; amh Amharic
- ; apa Apache languages
- ; ara Arabic
- ; arc Aramaic
- ; arp Arapaho
- ; arn Araucanian
- ; arw Arawak
- ; hye Armenian
- ; hye/arm Armenian
- ; art Artificial (Other)
- ; asm Assamese
- ; ath Athapascan languages
- ; map Austronesian (Other)
- ; ava Avaric
- ; ave Avestan
- ; awa Awandhi
- ; aym Aymara
- ; aze Azerbaijani
- ; nah Aztec
- ; ban Balinese
- ; bat Baltic (Other)
- ; bal Baluchi
- ; bam Bambara
- ; bai Bamileke languages
- ; bad Banda
- ; bas Basa
- ; bak Bashkir
- ; eus Basque
- ; baq/eus Basque
- ; bej Beja
- ; bem Bemba
- ; ben Bengali
- ; ber Berber languages
- ; bho Bhojpuri
- ; bih Bihari
- ; bik Bikol
- ; bin Bini
- ; bis Bislama
- ; bra Braj
- ; bre Breton
- ; bug Buginese
- ; bul Bulgarian
- ; mya Burmese
- ; bur/mya Burmese
- ; bel Byelorussian
- ; cad Caddo
- ; car Carib
- ; cat Catalan
- ; cau Caucasian (Other)
- ; ceb Cebuano
- ; cel Celtic (Other)
- ; cai Central American Indian (Other)
- ; chg Chagatai
- ; cha Chamorro
- ; che Chechen
- ; chr Cherokee
- ; chy Cheyenne
- ; chb Chibcha
- ; zho Chinese
- ; zho/chi Chinese
- ; chn Chinook jargon
- ; cho Choctaw
- ; chu Church Slavic
- ; chv Chuvash
- ; cop Coptic
- ; cor Cornish
- ; cos Corsican
- ; cre Cree
- ; mus Creek
- ; cpe Creoles and pidgins, English-based (Other)
- ; crp Creoles and pidgins (Other)
- ; cpp Creoles and pidgins, Portuguese-based (Other)
- ; cpf Creoles and pidgins, French-based (Other)
- ; cus Cushitic (Other)
- ; ces Czech
- ; ces/cze Czeck
- ; dak Dakota
- ; dan Danish
- ; del Delaware
- ; din Dinka
- ; doi Dogri
- ; dra Dravidian (Other)
- ; dua Duala
- ; nld Dutch
- ; dut/nld Dutch
- ; dum Dutch, Middle (ca. 1050-1350)
- ; dyu Dyula
- ; dzo Dzongkha
- ; efi Efik
- ; egy Egyptian (Ancient)
- ; eka Ekajuk
- ; elx Elamite
- ; eng English
- ; enm English, Middle (1100-1500)
- ; ang English, Old (ca. 450-1100)
- ; esk Eskimo (Other)
- ; epo Esperanto
- ; est Estonian
- ; eth Ethiopic
- ; ewe Ewe
- ; ewo Ewondo
- ; fan Fang
- ; fat Fanti
- ; fao Faroese
- ; fij Fijian
- ; fin Finnish
- ; fiu Finno-Ugrian (Other)
- ; fon Fon
- ; fra French
- ; fra/fre French
- ; fro French, Old (ca. 842-1400)
- ; frm French, Middel (ca. 1400-1600)
- ; fry Friesian
- ; ful Fulah
- ; gaa Ga
- ; gdh Gaelic (Scots)
- ; gdh/gae Gaelic (Scots)
- ; glg Gallegan
- ; lug Ganda
- ; gay Gayo
- ; kat Georgian
- ; geo/kat Georgian
- ; deu German
- ; ger/deu German
- ; goh German, Old High (ca. 750-1050)
- ; gmh German, Middle High (ca. 1050-1500)
- ; gem Germanic (Other)
- ; gil Gilbertese
- ; gon Gondi
- ; got Gothic
- ; grb Grebo
- ; ell Greek, Modern (1453- )
- ; gre/ell Greek, Modern (1453- )
- ; grc Greek, Ancient (to 1453)
- ; kal Greenlandic
- ; grn Guarani
- ; guj Gujarati
- ; hai Haida
- ; hau Hausa
- ; haw Hawaiian
- ; heb Hebrew
- ; her Herero
- ; hil Hiligaynon
- ; him Himachali
- ; hin Hindi
- ; hmo Hiri Motu
- ; hun Hungarian
- ; hup Hupa
- ; iba Iban
- ; isl Icelandic
- ; ice/isl Icelandic
- ; ibo Igbo
- ; ijo Ijo
- ; ilo Iloko
- ; inc Indic (Other)
- ; ine Indo-European (Other)
- ; ind Indonesian
- ; ina Interlingua (International Auxilary Language Association)
- ; ile Interlingue
- ; iku Inuktitut
- ; ipk Inupiak
- ; ira Iranian (Other)
- ; gai Irish
- ; iri/gai Irish
- ; iro Iroquoian languages
- ; ita Italian
- ; jpn Japanese
- ; jaw Javanese
- ; jav/jaw Javanese
- ; jrb Judeo-Arabic
- ; jpr Judeo-Persian
- ; kab Kabyle
- ; kac Kachin
- ; kam Kamba
- ; kan Kannada
- ; kau Kanuri
- ; kaa Kara-Kalpak
- ; kar Karen
- ; kas Kashmiri
- ; kaw Kawi
- ; kaz Kazakh
- ; kha Khasi
- ; khm Khmer
- ; khi Khoisan (Other)
- ; kho Khotanese
- ; kik Kikuyu
- ; kin Kinyarwanda
- ; kir Kirghiz
- ; kon Kongo
- ; kok Konkani
- ; kor Korean
- ; kpe Kpelle
- ; kro Kru
- ; kua Kuanyama
- ; kur Kurdish
- ; kru Kurukh
- ; kus Kusaie
- ; kut Kutenai
- ; lad Ladino
- ; lah Lahnda
- ; lam Lamba
- ; oci Langue d'oc (post 1500)
- ; lao Lao
- ; lap Lapp languages
- ; lat Latin
- ; lav Latvian
- ; lin Lingala
- ; lit Lithuanian
- ; loz Lozi
- ; lub Luba-Katanga
- ; lui Luiseno
- ; lun Lunda
- ; luo Luo (Kenya and Tanzania)
- ; mke Macedonian
- ; mac/mke Macedonian
- ; mad Madurese
- ; mag Magahi
- ; mai Maithili
- ; mak Makasar
- ; mlg Malagasy
- ; msa Malay
- ; may/msa Malay
- ; mal Malayalam
- ; mlt Maltese
- ; man Mandingo
- ; mni Manipuri
- ; mno Manobo languages
- ; max Manx
- ; mri Maori
- ; mri/mao Maori
- ; mar Marathi
- ; mah Marshall
- ; mwr Marwari
- ; mas Masai
- ; myn Mayan languages
- ; men Mende
- ; mic Micmac
- ; min Minangkabau
- ; mis Miscellaneous (Other)
- ; moh Mohawk
- ; mol Moldavian
- ; mkh Mon-Khmer (Other)
- ; lol Mongo
- ; mon Mongolian
- ; mos Mossi
- ; mul Multiple languages
- ; mun Munda (Other)
- ; nau Nauru
- ; nav Navajo
- ; nde Ndebele (Zimbabwe)
- ; ndo Ndonga
- ; nep Nepali
- ; new Newari
- ; nic Niger-Kordofanian (Other)
- ; ssa Nilo-Saharan (Other)
- ; niu Niuean
- ; nai North American Indian (Other)
- ; nso Northern Sohto
- ; nor Norwegian
- ; nub Nubian languages
- ; nym Nyamwezi
- ; nya Nyanja
- ; nyn Nyankole
- ; nyo Nyoro
- ; nzi Nzima
- ; oji Ojibwa
- ; non Old Norse
- ; peo Old Persian (ca. 600-400 B.C.)
- ; ori Oriya
- ; orm Oromo
- ; osa Osage
- ; oss Ossetic
- ; oto Otomian languages
- ; pal Pahlavi
- ; pau Palauan
- ; pli Pali
- ; pam Pampanga
- ; pag Pangasinan
- ; pan Panjabi
- ; pap Papiamento
- ; paa Papuan-Australian (Other)
- ; fas Persian
- ; fas/per Persian
- ; pol Polish
- ; pon Ponape
- ; por Portuguese
- ; pra Prakrit languages
- ; pro Provencal, Old (to 1500)
- ; pus Pushto
- ; que Quechua
- ; roh Raeto-Romance
- ; raj Rajasthani
- ; rar Rarotongan
- ; roa Romance (Other)
- ; rum Romanian
- ; ron/rum Romanian
- ; rom Romany
- ; run Rundi
- ; rus Russian
- ; sal Salishan languages
- ; sam Samaritan Aramaic
- ; smo Samoan
- ; sad Sandawe
- ; sag Sango
- ; san Sanskrit
- ; sco Scots
- ; sel Selkup
- ; sem Semitic (Other)
- ; scr Serbo-Croatian
- ; srr Serer
- ; shn Shan
- ; sna Shona
- ; sid Sidamo
- ; bla Siksika
- ; snd Sindhi
- ; sin Sinhalese
- ; sit Sino-Tibetan (Other)
- ; sio Siouan languages
- ; sla Slavic (Other)
- ; slk Slovak
- ; slo/slk Slovak
- ; slv Slovenian
- ; sog Sogdian
- ; som Somali
- ; son Songhai
- ; wen Sorbian languages
- ; sot Sotho
- ; sai South American Indian (Other)
- ; esl Spanish
- ; esl/spa Spanish
- ; suk Sukuma
- ; sux Sumerian
- ; sun Sundanese
- ; sus Susu
- ; swa Swahili
- ; ssw Swazi
- ; sve Swedish
- ; swe/sve Swedish
- ; syr Syriac
- ; tgl Tagalog
- ; tah Tahitian
- ; tgk Tajik
- ; tam Tamil
- ; tat Tatar
- ; tel Telugu
- ; ter Tereno
- ; tha Thai
- ; bod Tibetan
- ; tib/bod Tibetan
- ; tig Tigre
- ; tir Tigrinya
- ; tem Timne
- ; tiv Tivi
- ; tli Tlingit
- ; ton Tonga (Tonga Islands)
- ; tog Tonga (Nyasa)
- ; tru Truk
- ; tsi Tsimshian
- ; tso Tsonga
- ; tsn Tswana
- ; tum Tumbuka
- ; tur Turkish
- ; ota Turkish, Ottoman
- ; tuk Turkmen
- ; twi Twi
- ; uga Ugaritic
- ; uig Uighur
- ; ukr Ukrainian
- ; umb Umbundu
- ; und Undetermined
- ; urd Urdu
- ; uzb Uzbek
- ; vai Vai
- ; ven Venda
- ; vie Vietnamese
- ; vol Volapuk
- ; vot Votic
- ; wak Wakashan languages
- ; wal Walamo
- ; war Waray
- ; was Washo
- ; cym Welsh
- ; cym/wel Welsh
- ; wol Wolof
- ; xho Xhosa
- ; yao Yao
- ; yap Yap
- ; yid Yiddish
- ; yor Yoruba
- ; zap Zapotec
- ; zen Zenaga
- ; zha Zhuang
- ; zul Zulu
- ; zun Zuni
- ;
- ;
- ;
- ;Codes from ISO 3166
- ;
- ;Updated by the RIPE Network Coordination Centre, in coordination with
- ;the ISO 3166 Maintenance Agency, Berlin
- ;
- ;Country A 2 A 3 Number
- ;----------------------------------------------------------------------
- ;AFGHANISTAN AF AFG 004
- ;ALBANIA AL ALB 008
- ;ALGERIA DZ DZA 012
- ;AMERICAN SAMOA AS ASM 016
- ;ANDORRA AD AND 020
- ;ANGOLA AO AGO 024
- ;ANGUILLA AI AIA 660
- ;ANTARCTICA AQ ATA 010
- ;ANTIGUA AND BARBUDA AG ATG 028
- ;ARGENTINA AR ARG 032
- ;ARMENIA AM ARM 051
- ;ARUBA AW ABW 533
- ;AUSTRALIA AU AUS 036
- ;AUSTRIA AT AUT 040
- ;AZERBAIJAN AZ AZE 031
- ;BAHAMAS BS BHS 044
- ;BAHRAIN BH BHR 048
- ;BANGLADESH BD BGD 050
- ;BARBADOS BB BRB 052
- ;BELARUS BY BLR 112
- ;BELGIUM BE BEL 056
- ;BELIZE BZ BLZ 084
- ;BENIN BJ BEN 204
- ;BERMUDA BM BMU 060
- ;BHUTAN BT BTN 064
- ;BOLIVIA BO BOL 068
- ;BOSNIA AND HERZEGOWINA BA BIH 070
- ;BOTSWANA BW BWA 072
- ;BOUVET ISLAND BV BVT 074
- ;BRAZIL BR BRA 076
- ;BRITISH INDIAN OCEAN TERRITORY IO IOT 086
- ;BRUNEI DARUSSALAM BN BRN 096
- ;BULGARIA BG BGR 100
- ;BURKINA FASO BF BFA 854
- ;BURUNDI BI BDI 108
- ;CAMBODIA KH KHM 116
- ;CAMEROON CM CMR 120
- ;CANADA CA CAN 124
- ;CAPE VERDE CV CPV 132
- ;CAYMAN ISLANDS KY CYM 136
- ;CENTRAL AFRICAN REPUBLIC CF CAF 140
- ;CHAD TD TCD 148
- ;CHILE CL CHL 152
- ;CHINA CN CHN 156
- ;CHRISTMAS ISLAND CX CXR 162
- ;COCOS (KEELING) ISLANDS CC CCK 166
- ;COLOMBIA CO COL 170
- ;COMOROS KM COM 174
- ;CONGO CG COG 178
- ;COOK ISLANDS CK COK 184
- ;COSTA RICA CR CRI 188
- ;COTE D'IVOIRE CI CIV 384
- ;CROATIA (local name: Hrvatska) HR HRV 191
- ;CUBA CU CUB 192
- ;CYPRUS CY CYP 196
- ;CZECH REPUBLIC CZ CZE 203
- ;DENMARK DK DNK 208
- ;DJIBOUTI DJ DJI 262
- ;DOMINICA DM DMA 212
- ;DOMINICAN REPUBLIC DO DOM 214
- ;EAST TIMOR TP TMP 626
- ;ECUADOR EC ECU 218
- ;EGYPT EG EGY 818
- ;EL SALVADOR SV SLV 222
- ;EQUATORIAL GUINEA GQ GNQ 226
- ;ERITREA ER ERI 232
- ;ESTONIA EE EST 233
- ;ETHIOPIA ET ETH 210
- ;FALKLAND ISLANDS (MALVINAS) FK FLK 238
- ;FAROE ISLANDS FO FRO 234
- ;FIJI FJ FJI 242
- ;FINLAND FI FIN 246
- ;FRANCE FR FRA 250
- ;FRANCE, METROPOLITAN FX FXX 249
- ;FRENCH GUIANA GF GUF 254
- ;FRENCH POLYNESIA PF PYF 258
- ;FRENCH SOUTHERN TERRITORIES TF ATF 260
- ;GABON GA GAB 266
- ;GAMBIA GM GMB 270
- ;GEORGIA GE GEO 268
- ;GERMANY DE DEU 276
- ;GHANA GH GHA 288
- ;GIBRALTAR GI GIB 292
- ;GREECE GR GRC 300
- ;GREENLAND GL GRL 304
- ;GRENADA GD GRD 308
- ;GUADELOUPE GP GLP 312
- ;GUAM GU GUM 316
- ;GUATEMALA GT GTM 320
- ;GUINEA GN GIN 324
- ;GUINEA-BISSAU GW GNB 624
- ;GUYANA GY GUY 328
- ;HAITI HT HTI 332
- ;HEARD AND MC DONALD ISLANDS HM HMD 334
- ;HONDURAS HN HND 340
- ;HONG KONG HK HKG 344
- ;HUNGARY HU HUN 348
- ;ICELAND IS ISL 352
- ;INDIA IN IND 356
- ;INDONESIA ID IDN 360
- ;IRAN (ISLAMIC REPUBLIC OF) IR IRN 364
- ;IRAQ IQ IRQ 368
- ;IRELAND IE IRL 372
- ;ISRAEL IL ISR 376
- ;ITALY IT ITA 380
- ;JAMAICA JM JAM 388
- ;JAPAN JP JPN 392
- ;JORDAN JO JOR 400
- ;KAZAKHSTAN KZ KAZ 398
- ;KENYA KE KEN 404
- ;KIRIBATI KI KIR 296
- ;KOREA, DEMOCRATIC PEOPLE'S REPUBLIC OF KP PRK 408
- ;KOREA, REPUBLIC OF KR KOR 410
- ;KUWAIT KW KWT 414
- ;KYRGYZSTAN KG KGZ 417
- ;LAO PEOPLE'S DEMOCRATIC REPUBLIC LA LAO 418
- ;LATVIA LV LVA 428
- ;LEBANON LB LBN 422
- ;LESOTHO LS LSO 426
- ;LIBERIA LR LBR 430
- ;LIBYAN ARAB JAMAHIRIYA LY LBY 434
- ;LIECHTENSTEIN LI LIE 438
- ;LITHUANIA LT LTU 440
- ;LUXEMBOURG LU LUX 442
- ;MACAU MO MAC 446
- ;MACEDONIA, THE FORMER YUGOSLAV REPUBLIC OF MK MKD 807 (provis)
- ;MADAGASCAR MG MDG 450
- ;MALAWI MW MWI 454
- ;MALAYSIA MY MYS 458
- ;MALDIVES MV MDV 462
- ;MALI ML MLI 466
- ;MALTA MT MLT 470
- ;MARSHALL ISLANDS MH MHL 584
- ;MARTINIQUE MQ MTQ 474
- ;MAURITANIA MR MRT 478
- ;MAURITIUS MU MUS 480
- ;MAYOTTE YT MYT 175
- ;MEXICO MX MEX 484
- ;MICRONESIA, FEDERATED STATES OF FM FSM 583
- ;MOLDOVA, REPUBLIC OF MD MDA 498
- ;MONACO MC MCO 492
- ;MONGOLIA MN MNG 496
- ;MONTSERRAT MS MSR 500
- ;MOROCCO MA MAR 504
- ;MOZAMBIQUE MZ MOZ 508
- ;MYANMAR MM MMR 104
- ;NAMIBIA NA NAM 516
- ;NAURU NR NRU 520
- ;NEPAL NP NPL 524
- ;NETHERLANDS NL NLD 528
- ;NETHERLANDS ANTILLES AN ANT 530
- ;NEW CALEDONIA NC NCL 540
- ;NEW ZEALAND NZ NZL 554
- ;NICARAGUA NI NIC 558
- ;NIGER NE NER 562
- ;NIGERIA NG NGA 566
- ;NIUE NU NIU 570
- ;NORFOLK ISLAND NF NFK 574
- ;NORTHERN MARIANA ISLANDS MP MNP 580
- ;NORWAY NO NOR 578
- ;OMAN OM OMN 512
- ;PAKISTAN PK PAK 586
- ;PALAU PW PLW 585
- ;PANAMA PA PAN 591
- ;PAPUA NEW GUINEA PG PNG 598
- ;PARAGUAY PY PRY 600
- ;PERU PE PER 604
- ;PHILIPPINES PH PHL 608
- ;PITCAIRN PN PCN 612
- ;POLAND PL POL 616
- ;PORTUGAL PT PRT 620
- ;PUERTO RICO PR PRI 630
- ;QATAR QA QAT 634
- ;REUNION RE REU 638
- ;ROMANIA RO ROM 642
- ;RUSSIAN FEDERATION RU RUS 643
- ;RWANDA RW RWA 646
- ;SAINT KITTS AND NEVIS KN KNA 659
- ;SAINT LUCIA LC LCA 662
- ;SAINT VINCENT AND THE GRENADINES VC VCT 670
- ;SAMOA WS WSM 882
- ;SAN MARINO SM SMR 674
- ;SAO TOME AND PRINCIPE ST STP 678
- ;SAUDI ARABIA SA SAU 682
- ;SENEGAL SN SEN 686
- ;SEYCHELLES SC SYC 690
- ;SIERRA LEONE SL SLE 694
- ;SINGAPORE SG SGP 702
- ;SLOVAKIA (Slovak Republic) SK SVK 703
- ;SLOVENIA SI SVN 705
- ;SOLOMON ISLANDS SB SLB 090
- ;SOMALIA SO SOM 706
- ;SOUTH AFRICA ZA ZAF 710
- ;SPAIN ES ESP 724
- ;SRI LANKA LK LKA 144
- ;ST. HELENA SH SHN 654
- ;ST. PIERRE AND MIQUELON PM SPM 666
- ;SUDAN SD SDN 736
- ;SURINAME SR SUR 740
- ;SVALBARD AND JAN MAYEN ISLANDS SJ SJM 744
- ;SWAZILAND SZ SWZ 748
- ;SWEDEN SE SWE 752
- ;SWITZERLAND CH CHE 756
- ;SYRIAN ARAB REPUBLIC SY SYR 760
- ;TAIWAN, PROVINCE OF CHINA TW TWN 158
- ;TAJIKISTAN TJ TJK 762
- ;TANZANIA, UNITED REPUBLIC OF TZ TZA 834
- ;THAILAND TH THA 764
- ;TOGO TG TGO 768
- ;TOKELAU TK TKL 772
- ;TONGA TO TON 776
- ;TRINIDAD AND TOBAGO TT TTO 780
- ;TUNISIA TN TUN 788
- ;TURKEY TR TUR 792
- ;TURKMENISTAN TM TKM 795
- ;TURKS AND CAICOS ISLANDS TC TCA 796
- ;TUVALU TV TUV 798
- ;UGANDA UG UGA 800
- ;UKRAINE UA UKR 804
- ;UNITED ARAB EMIRATES AE ARE 784
- ;UNITED KINGDOM GB GBR 826
- ;UNITED STATES US USA 840
- ;UNITED STATES MINOR OUTLYING ISLANDS UM UMI 581
- ;URUGUAY UY URY 858
- ;UZBEKISTAN UZ UZB 860
- ;VANUATU VU VUT 548
- ;VATICAN CITY STATE (HOLY SEE) VA VAT 336
- ;VENEZUELA VE VEN 862
- ;VIET NAM VN VNM 704
- ;VIRGIN ISLANDS (BRITISH) VG VGB 092
- ;VIRGIN ISLANDS (U.S.) VI VIR 850
- ;WALLIS AND FUTUNA ISLANDS WF WLF 876
- ;WESTERN SAHARA EH ESH 732
- ;YEMEN YE YEM 887
- ;YUGOSLAVIA YU YUG 891
- ;ZAIRE ZR ZAR 180
- ;ZAMBIA ZM ZMB 894
- ;ZIMBABWE ZW ZWE 716
- ;
- ENDIF ; __TEXTCOMMON__
-
-